Skip to content
  • 0 Votes
    9 Posts
    815 Views
    JonBJ

    @bibasmall
    I'm not understanding what is going on with your const or not. The slot CommitData() must not be const. Is it??

    Hmm, you mean you call it from CEditorDelegate::createEditor(), that is const, so its this is const, and you can't then use that for the slot object? Then I really don't know why it's OK for the connect() to actual slot but not to lambda (I suspect it's this issue, not because the new CommitData(QPushButton *btn) parameter....

    Is your CommitData() const? Doesn't look like it. If you made it const does that allow the connect()?

    UPDATE
    I think this has crossed with your latest. I believe you show there you have found a way. I prefer the second one.

    Basically you have raised a "gotcha": createEditor() is const, and that prevents you from connecting a slot to this inside it, which is something one might well want to do. It (apparently) works when &CEditorDelegate::CommitData is passed on its own as a standalone argument, but not if you try a lambda with this->CommitData(). If the C++ super-experts here see this they might comment....

  • 0 Votes
    1 Posts
    162 Views
    No one has replied